@echo off
chcp 65001 >nul
setlocal enabledelayedexpansion

REM Kafka Tool 服务状态检查脚本 (Windows版本)
REM 检查后端服务和WebSocket服务的运行状态

echo === Kafka Tool 服务状态 ===
echo.

set websocket_running=false
set backend_running=false
set websocket_pid=
set backend_pid=

echo 🔍 检查服务状态:

REM 检查WebSocket服务 (端口8001)
for /f "tokens=5" %%a in ('netstat -ano ^| findstr ":8001" ^| findstr "LISTENING"') do (
    set websocket_pid=%%a
    set websocket_running=true
)

if "!websocket_running!"=="true" (
    echo ✅ WebSocket服务 ^(端口 8001^): 运行中 ^(PID: !websocket_pid!^)
) else (
    echo ❌ WebSocket服务 ^(端口 8001^): 未运行
)

REM 检查Django后端服务 (端口8002)
for /f "tokens=5" %%a in ('netstat -ano ^| findstr ":8002" ^| findstr "LISTENING"') do (
    set backend_pid=%%a
    set backend_running=true
)

echo.
if "!backend_running!"=="true" (
    echo ✅ Django后端服务 ^(端口 8002^): 运行中 ^(PID: !backend_pid!^)
) else (
    echo ❌ Django后端服务 ^(端口 8002^): 未运行
)

echo.
echo 📊 服务访问地址:
if "!websocket_running!"=="true" (
    echo    WebSocket服务: http://127.0.0.1:8001
) else (
    echo    WebSocket服务: 未运行
)

if "!backend_running!"=="true" (
    echo    Django后端服务: http://127.0.0.1:8002
) else (
    echo    Django后端服务: 未运行
)

echo.
echo 📋 日志文件:
if exist "logs\websocket.log" (
    for %%F in ("logs\websocket.log") do (
        echo    WebSocket日志: logs\websocket.log ^(%%~zF 字节^)
    )
) else (
    echo    WebSocket日志: 不存在
)

if exist "logs\backend.log" (
    for %%F in ("logs\backend.log") do (
        echo    后端服务日志: logs\backend.log ^(%%~zF 字节^)
    )
) else (
    echo    后端服务日志: 不存在
)

echo.
echo 🛠️  可用命令:
echo    启动服务: start_services.bat
echo    停止服务: stop_services.bat
echo    查看WebSocket日志: type logs\websocket.log
echo    查看后端日志: type logs\backend.log

REM 总体状态
echo.
if "!websocket_running!"=="true" (
    if "!backend_running!"=="true" (
        echo 🟢 总体状态: 所有服务正常运行
    ) else (
        echo 🟡 总体状态: 部分服务运行中
    )
) else (
    if "!backend_running!"=="true" (
        echo 🟡 总体状态: 部分服务运行中
    ) else (
        echo 🔴 总体状态: 所有服务已停止
    )
)

echo.
echo 按任意键退出...
pause >nul